#include "slros_busmsg_conversion.h"


// Conversions between SL_Bus_rocr6_move_pick_place_g3p_msgs_Gripper and g3p_msgs::Gripper

void convertFromBus(g3p_msgs::Gripper* msgPtr, SL_Bus_rocr6_move_pick_place_g3p_msgs_Gripper const* busPtr)
{
  const std::string rosMessageType("g3p_msgs/Gripper");

  msgPtr->state =  busPtr->State;
}

void convertToBus(SL_Bus_rocr6_move_pick_place_g3p_msgs_Gripper* busPtr, g3p_msgs::Gripper const* msgPtr)
{
  const std::string rosMessageType("g3p_msgs/Gripper");

  busPtr->State =  msgPtr->state;
}


// Conversions between SL_Bus_rocr6_move_pick_place_geometry_msgs_Point and geometry_msgs::Point

void convertFromBus(geometry_msgs::Point* msgPtr, SL_Bus_rocr6_move_pick_place_geometry_msgs_Point const* busPtr)
{
  const std::string rosMessageType("geometry_msgs/Point");

  msgPtr->x =  busPtr->X;
  msgPtr->y =  busPtr->Y;
  msgPtr->z =  busPtr->Z;
}

void convertToBus(SL_Bus_rocr6_move_pick_place_geometry_msgs_Point* busPtr, geometry_msgs::Point const* msgPtr)
{
  const std::string rosMessageType("geometry_msgs/Point");

  busPtr->X =  msgPtr->x;
  busPtr->Y =  msgPtr->y;
  busPtr->Z =  msgPtr->z;
}


// Conversions between SL_Bus_rocr6_move_pick_place_geometry_msgs_Pose and geometry_msgs::Pose

void convertFromBus(geometry_msgs::Pose* msgPtr, SL_Bus_rocr6_move_pick_place_geometry_msgs_Pose const* busPtr)
{
  const std::string rosMessageType("geometry_msgs/Pose");

  convertFromBus(&msgPtr->orientation, &busPtr->Orientation);
  convertFromBus(&msgPtr->position, &busPtr->Position);
}

void convertToBus(SL_Bus_rocr6_move_pick_place_geometry_msgs_Pose* busPtr, geometry_msgs::Pose const* msgPtr)
{
  const std::string rosMessageType("geometry_msgs/Pose");

  convertToBus(&busPtr->Orientation, &msgPtr->orientation);
  convertToBus(&busPtr->Position, &msgPtr->position);
}


// Conversions between SL_Bus_rocr6_move_pick_place_geometry_msgs_Quaternion and geometry_msgs::Quaternion

void convertFromBus(geometry_msgs::Quaternion* msgPtr, SL_Bus_rocr6_move_pick_place_geometry_msgs_Quaternion const* busPtr)
{
  const std::string rosMessageType("geometry_msgs/Quaternion");

  msgPtr->w =  busPtr->W;
  msgPtr->x =  busPtr->X;
  msgPtr->y =  busPtr->Y;
  msgPtr->z =  busPtr->Z;
}

void convertToBus(SL_Bus_rocr6_move_pick_place_geometry_msgs_Quaternion* busPtr, geometry_msgs::Quaternion const* msgPtr)
{
  const std::string rosMessageType("geometry_msgs/Quaternion");

  busPtr->W =  msgPtr->w;
  busPtr->X =  msgPtr->x;
  busPtr->Y =  msgPtr->y;
  busPtr->Z =  msgPtr->z;
}


// Conversions between SL_Bus_rocr6_move_pick_place_rocr6_msgs_Goal and rocr6_msgs::Goal

void convertFromBus(rocr6_msgs::Goal* msgPtr, SL_Bus_rocr6_move_pick_place_rocr6_msgs_Goal const* busPtr)
{
  const std::string rosMessageType("rocr6_msgs/Goal");

  msgPtr->a1 =  busPtr->A1;
  msgPtr->a2 =  busPtr->A2;
  msgPtr->a3 =  busPtr->A3;
  msgPtr->a4 =  busPtr->A4;
  msgPtr->a5 =  busPtr->A5;
  msgPtr->a6 =  busPtr->A6;
  msgPtr->cmd =  busPtr->Cmd;
}

void convertToBus(SL_Bus_rocr6_move_pick_place_rocr6_msgs_Goal* busPtr, rocr6_msgs::Goal const* msgPtr)
{
  const std::string rosMessageType("rocr6_msgs/Goal");

  busPtr->A1 =  msgPtr->a1;
  busPtr->A2 =  msgPtr->a2;
  busPtr->A3 =  msgPtr->a3;
  busPtr->A4 =  msgPtr->a4;
  busPtr->A5 =  msgPtr->a5;
  busPtr->A6 =  msgPtr->a6;
  busPtr->Cmd =  msgPtr->cmd;
}


// Conversions between SL_Bus_rocr6_move_pick_place_std_msgs_Bool and std_msgs::Bool

void convertFromBus(std_msgs::Bool* msgPtr, SL_Bus_rocr6_move_pick_place_std_msgs_Bool const* busPtr)
{
  const std::string rosMessageType("std_msgs/Bool");

  msgPtr->data =  busPtr->Data;
}

void convertToBus(SL_Bus_rocr6_move_pick_place_std_msgs_Bool* busPtr, std_msgs::Bool const* msgPtr)
{
  const std::string rosMessageType("std_msgs/Bool");

  busPtr->Data =  msgPtr->data;
}


// Conversions between SL_Bus_rocr6_move_pick_place_std_msgs_Float64MultiArray and std_msgs::Float64MultiArray

void convertFromBus(std_msgs::Float64MultiArray* msgPtr, SL_Bus_rocr6_move_pick_place_std_msgs_Float64MultiArray const* busPtr)
{
  const std::string rosMessageType("std_msgs/Float64MultiArray");

  convertFromBusVariablePrimitiveArray(msgPtr->data, busPtr->Data, busPtr->Data_SL_Info);
  convertFromBus(&msgPtr->layout, &busPtr->Layout);
}

void convertToBus(SL_Bus_rocr6_move_pick_place_std_msgs_Float64MultiArray* busPtr, std_msgs::Float64MultiArray const* msgPtr)
{
  const std::string rosMessageType("std_msgs/Float64MultiArray");

  convertToBusVariablePrimitiveArray(busPtr->Data, busPtr->Data_SL_Info, msgPtr->data, slros::EnabledWarning(rosMessageType, "data"));
  convertToBus(&busPtr->Layout, &msgPtr->layout);
}


// Conversions between SL_Bus_rocr6_move_pick_place_std_msgs_MultiArrayDimension and std_msgs::MultiArrayDimension

void convertFromBus(std_msgs::MultiArrayDimension* msgPtr, SL_Bus_rocr6_move_pick_place_std_msgs_MultiArrayDimension const* busPtr)
{
  const std::string rosMessageType("std_msgs/MultiArrayDimension");

  convertFromBusVariablePrimitiveArray(msgPtr->label, busPtr->Label, busPtr->Label_SL_Info);
  msgPtr->size =  busPtr->Size;
  msgPtr->stride =  busPtr->Stride;
}

void convertToBus(SL_Bus_rocr6_move_pick_place_std_msgs_MultiArrayDimension* busPtr, std_msgs::MultiArrayDimension const* msgPtr)
{
  const std::string rosMessageType("std_msgs/MultiArrayDimension");

  convertToBusVariablePrimitiveArray(busPtr->Label, busPtr->Label_SL_Info, msgPtr->label, slros::EnabledWarning(rosMessageType, "label"));
  busPtr->Size =  msgPtr->size;
  busPtr->Stride =  msgPtr->stride;
}


// Conversions between SL_Bus_rocr6_move_pick_place_std_msgs_MultiArrayLayout and std_msgs::MultiArrayLayout

void convertFromBus(std_msgs::MultiArrayLayout* msgPtr, SL_Bus_rocr6_move_pick_place_std_msgs_MultiArrayLayout const* busPtr)
{
  const std::string rosMessageType("std_msgs/MultiArrayLayout");

  msgPtr->data_offset =  busPtr->DataOffset;
  convertFromBusVariableNestedArray(msgPtr->dim, busPtr->Dim, busPtr->Dim_SL_Info);
}

void convertToBus(SL_Bus_rocr6_move_pick_place_std_msgs_MultiArrayLayout* busPtr, std_msgs::MultiArrayLayout const* msgPtr)
{
  const std::string rosMessageType("std_msgs/MultiArrayLayout");

  busPtr->DataOffset =  msgPtr->data_offset;
  convertToBusVariableNestedArray(busPtr->Dim, busPtr->Dim_SL_Info, msgPtr->dim, slros::EnabledWarning(rosMessageType, "dim"));
}

